home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
001a
/
thost200.zip
/
TINYHOST.DOC
< prev
next >
Wrap
Text File
|
1991-08-15
|
50KB
|
1,253 lines
TINYHOST
V 2.00
August 15, 1991
Copyright (C) 1991 by Bruce A. Krobusek
A small, personal Host program for
IBM PC's or compatibles
Created by : Bruce A. Krobusek
1001 Cunningham Drive
Victor, NY 14564
CompuServe : 74106,1335
Genie : B.KROBUSEK
1.0 INTRODUCTION 1
1.1 What is TinyHost? 1
1.2 Why TinyHost? 2
1.3 What is a SysOp? 2
2.0 INSTALLATION and SETUP 2
2.1 Host System Requirements 2
2.2 Connecting System Requirements 2
2.3 Installation of TinyHost 2
2.4 Running TinyHost 3
2.5 Modem Requirements 3
2.6 Modifying the TINYHOST.CFG File 4
2.6.1 Descriptor Summary 4
2.6.2 Communications Specific Descriptors 4
2.6.3 General Descriptors 5
2.7 Setting up Access Levels 6
2.8 Customizable Display Files 7
3.0 OPERATION 8
3.1 Ringback Operation 8
3.2 TinyHost Operation 8
3.3 File Oriented Commands 10
3.3.1 File Transfers 10
3.3.2 List Directory 10
3.3.3 Changing Directories 10
3.3.4 Typing out a File 11
3.4 Message Commands 11
3.4.1 Reading Messages 11
3.4.2 Entering Messages 11
3.4.3 Killing (Deleting) Messages 12
3.4.4 Viewing User List 12
3.5 Miscellaneous Commands 13
3.5.1 Expert Mode 13
3.5.2 Executing a Warm Boot 13
3.6 Command Chaining 13
3.7 User Inactivity and Hang-Ups 13
4.0 MISCELLANEOUS INFORMATION 14
4.1 What is Shareware? 14
4.2 Distributing TinyHost 14
4.3 Warranty Information 14
4.4 Program Support 15
4.5 New User Logons 16
4.6 Message File Format 16
4.7 Known Program Limits 16
Brand and product names used throughout this document are
trademarks or registered trademarks of their respective holders.
1.0 INTRODUCTION
1.1 What is TinyHost?
TinyHost is a small, personal host program I have developed
for IBM PC's or compatibles. It permits the transfer of files
(using modems) between two computers without the requirements or
overhead of other programs, particularly the full-fledged BBS
programs. In these days of people working at home more, and using
computers at both work and in their home, having necessary files
accessible can be a trying experience!
TinyHost has the following features:
1) Supports standard XModem, XModem/CRC, and 1K-XModem
(sometimes called YModem) file transfer protocols.
2) Operation can be via COM1, COM2, COM3, or COM4 using a
Hayes compatible modem, and at rates of 300 to 9600 baud.
3) Supports up to 25 users.
4) Supports Ringback mode, which permits easy use of a voice
phone line for data communications.
5) A text file that resides on the host system can be viewed
without downloading.
6) Supports Personal and Public mail, and SysOp Comments.
7) The actions of a remote user are echoed to the local
screen.
8) Unauthorized users are not able to logon to TinyHost - a
user account must be created prior to a user being
permitted access to the system.
9) Using the security level feature, access can be restricted
to one directory or the entire system can be available.
10) TinyHost is just that - tiny! The executable file is less
than 80K, and the program only requires approximately
130K of system RAM to run in.
Your version of TinyHost should have the following files
included:
THOSTxxx.EXE - TinyHost's executable. The xxx
refer to the version number of
the program
TINYHOST.DOC - The TinyHost manual in printer
ready form
TINYHOST.WEL - A sample welcome file
TINYHOST.CFG - A sample config file
HISTORY.TXT - A file describing the release
history of TinyHost
READ.ME - A short text file describing
TinyHost
Page 1
1.2 Why TinyHost?
Why did I create TinyHost? I needed a method to transfer
files with friends without hassle. I also found that, since I use
computers at work and at home, I was constantly leaving needed
files at one location or another, which resulted in duplicated
(or lost) effort.
TinyHost is also ideal for the company that needs to keep in
touch with remote employees, such as a sales force. With the file
transfer and message capability, it is easy to provide a single
transfer point for up-to-date information.
TinyHost was written using Borland's C++, and consumes
approximately 130K bytes of memory space when running. The small
memory requirements, along with the small .EXE and other
associated files, permits even floppy-disk based systems to be
used for TinyHost operation.
1.3 What is a SysOp?
When the term SysOp is used in this manual it refers to the
person who installs TinyHost on his computer (you), decides who
can logon to his system, and what directories they are able to
access.
2.0 INSTALLATION and SETUP
2.1 Host System Requirements
TinyHost does not need an elaborate system in order to be
used. A minimal system would consist of a single floppy drive,
256K RAM, any type of display, a serial port, and a Hayes
compatible modem. TinyHost supports COM1-4 using the normal
hardware interrupts for each port (IRQ4 for COM1 and COM3; IRQ3
for COM2 and COM4).
2.2 Connecting System Requirements
Any type of system and communications package should work
with TinyHost. Communications requirements are 8 bits, no parity,
and 1 stop bit.
2.3 Installation of TinyHost
It is recommended that TinyHost be installed in its own sub-
directory. The directory that holds THOSTxxx.EXE is called the
"execution directory", and it is here that the .CFG and other
TinyHost specific files should be kept. Only two files are needed
for operation - THOST.EXE and TINYHOST.CFG. Specific information
as to the expected config file format follows in section 2.6.
Please remember that user accounts MUST be created prior to using
TinyHost - the program does not permit new user logon!
Page 2
For security reasons, it is STRONGLY suggested that the
TinyHost execution directory be different from the start-up
directory!
2.4 Running TinyHost
To start TinyHost, move to the execution directory and type
"THOSTxxx", where the 'xxx' refers to the version number of
TinyHost.
2.5 Modem Requirements
TinyHost expects a modem that supports the Hayes compatible
command set and ASCII return codes. Because of the many different
modem configurations (switch settings) there would be no point in
attempting to provide a definitive setup for each. However, I can
describe what TinyHost expects - refer to the manual for your
modem to see how to make it fit these needs.
Most modems support two types of result codes - numeric
values (non-verbose) and ASCII strings (verbose). TinyHost
expects to receive verbose result codes of the following types:
OK - Informs the host that the modem has executed the
command string successfully.
RING - Informs the host that an incoming call has been
detected.
CONNECT - Denotes that the modem has made a 300 baud
connection.
CONNECT 1200 - A 1200 baud connection.
CONNECT 2400 - A 2400 baud connection.
CONNECT 4800 - A 4800 baud connection.
CONNECT 9600 - A 9600 baud connection.
Most modems support a switch setting that controls the state
of the RS-232 Data Terminal Ready (DTR) handshake line. The
switch setting can either force DTR TRUE at all times at the
modem, or it can be set to permit the host computer to control
DTR. If DTR is supported with the selected host computer and
modem, then a modem hangup string will be unnecessary as
TinyHost will toggle DTR when it wishes to drop carrier. However,
if DTR is unavailable, then the modem hangup string must be
defined (see HANGUP below) or TinyHost will be unable to
terminate a call and will never drop carrier.
Page 3
2.6 Modifying the TINYHOST.CFG File
When TinyHost is run it looks for TINYHOST.CFG in its
execution directory. If it doesn't find it the program aborts. If
the file is located, TinyHost reads in the information that it
needs to run. The config file can be created or modified using a
simple ASCII editor.
Each line in the config file can be up to 80 characters in
length. At any point in the line a comment can be added by
placing a pound sign (#) in the line - everything following it
will be ignored.
TinyHost requires specific information to run. To this end I
have implemented what I call 'descriptors' which denote what type
of information is specified on the line. The descriptor must
begin in the first column of the line. The descriptor can be in
either upper or lower case, it must be followed by a colon (:),
and the descriptor must be spelled properly. If a required
descriptor does not exist TinyHost will abort and display an
error message. Descriptors can be defined in any order.
The descriptors fall into two categories: communications
specific and general. The following table summarizes each
descriptor, with more detailed information in the following
sections.
2.6.1 Descriptor Summary
*PORT - COM port to be used
*BAUD - Beginning baud rate
RINGBACK - Ringback mode select
*INIT - Modem initialization string
HANGUP - Modem hangup string
*RESET - Modem reset string
*START - TinyHost start-up directory
OVERWRITE - File overwrite security level
BOOT - Warm boot security level
CHDIR - Change directory security level
SYSOP - SysOp security level
VIEW - View User List security level
ACCESS - Directory access security level
*USER - User account information
* Required Descriptor
2.6.2 Communications Specific Descriptors
PORT - This specifies the COM port that is to be used. Valid
values are 1, 2, 3, or 4. PORT is required.
BAUD - This specifies the baud rate that TinyHost is to
operate at. Legal values are 300, 1200, 2400, 4800, and 9600.
BAUD is required.
Page 4
RINGBACK - Specifies whether or not TinyHost will operate in
ringback mode. RINGBACK is not required - TinyHost will default
to Ringback Enabled Mode.
INIT - This is the initialization string used to configure
the modem. INIT is required. The string included with TinyHost
includes some modem commands that are necessary for proper
operation: ATE0M0Q0V1X2S0=0S2=43
E0 - Controls echo from the modem. Must be
set to 0, which is for no echo. Required.
M0 - Controls the modem speaker. A value of
0 turns the speaker off. Optional.
Q0 - Determines the kind of result codes sent
by the mode. Must be set for 0 (result
codes sent). Required.
V1 - Determines the type of result codes sent.
Must be set to 1 which specifies English
(ASCII) codes are sent. Required.
X2 - Selects extended modem result codes. Must
set to 2 or greater. Required.
S0 - Determines the number of rings on which
the modem will answer the phone. Must be
set to 0. Required.
S2 - Sets the value of the escape code for the
modem. Must be set to 43 ("+"). Required.
HANGUP - Specifies the command string necessary to tell the
modem to hang up the phone (go on hook). Refer to the section on
modem requirements (2.4) to see if this string is necessary.
HANGUP is Optional.
RESET - Specifies the command string necessary to reset the
modem. RESET is required.
2.6.3 General Descriptors
START - Specifies the start-up directory for TinyHost. This
is the directory that TinyHost moves to after its initialization
is complete. This is also the directory that is available to the
remote user that logs onto TinyHost so care should be taken that
no sensitive files are available for download from this
directory. START is required. A terminating backslash should not
be used except when specifying a root directory that is being
used for the start-up directory.
OVERWRITE - Specifies the security level needed for file
overwrite permission. This can be used to update TinyHosts'
config file remotely when used with the Warm Boot command. If
Overwrite security is not specified then no user will have
Overwrite permission. OVERWRITE expects a numeric value between 0
and 10.
BOOT - Specifies the security level needed to perform a warm
boot of the host system. This command can be used with Overwrite
to update TinyHosts' config file from a remote location. If Boot
Page 5
security is not specified then no user will have Boot permission.
BOOT expects a numeric value between 0 and 10.
CHDIR - Specifies the minimum security level necessary to be
able to move between directories of the system. If not specified
then no security level will be permitted to change directories.
CHDIR expects a numeric value between 0 and 10.
SYSOP - Specified the minimum security level necessary to
perform SysOp level functions. SysOp functions include the
ability to delete Public mail, and read and delete SysOp
Comments. SYSOP expects a numeric value between 0 and 10. If
it is not specified then remote SysOp privileges will be
disabled.
VIEW - Minimum security necessary to perform a View User List
function. It may be desired to prevent lower level users from
viewing the names of the TinyHost user base, and setting VIEW
high enough will do this. View expects a numeric value between 0
and 10. Not specifying a VIEW security level will result in all
users being able to view the User List.
ACCESS - Can be used to specify a security level needed to
access a directory. Up to 25 Access restrictions can be defined.
If no access restrictions are specified then anyone with CHDIR
permission can move to any system drive or directory. This could
be troublesome when floppy drives are specified and they contain
no diskettes. ACCESS expects a valid directory path (up to the
DOS limit of 63 characters), followed by a comma, followed by a
numeric value between 0 and 10 indicating a security level.
USER - Defines a user account. The line should contain (in
order) the users first name (15 characters maximum), last name
(30 characters), password (8 characters), and security level (2
characters). Each item must be separated from the other by a
comma (,). The security level should be specified by a numerical
string ranging in value from 0 to 10, with 10 being the highest
permissible security level. At least one, and up to 25, user
accounts can be created.
2.7 Setting up Access Levels
The first thing to remember is that if a user's account
hasn't been created in the TINYHOST.CFG file he will never be
able to log on! (See Section 4.5 for a method to permit new users
to log on).
From there, things get a little more complicated (but not
*too* complicated!). The SysOp will have to make decisions as to
how much system access to give to the user accounts he creates.
It is recommended that security level 10 be used to deny access
to items such as the floppy drives, etc. when a hard disk based
system is used. Trying to remotely access a floppy drive that
does not have a diskette in it will cause TinyHost to hang.
As noted above, a remote user can be restricted to the Start-
Up directory for his uploads and downloads. This is accomplished
Page 6
by setting the CHDIR access to a higher level than that of the
remote user.
To limit access to other areas of the system, the ACCESS
descriptor should be used. For instance, it is recommended that
only the SysOp have remote access to the sub-directory that
contains the TinyHost program, config file, and message files.
Since there is no specific file upload or download restrictions,
permitting access to these files (particularly the config file)
would then give access to the entire user log.
Entire disk drives (floppy, hard, and RAM) can be locked out
by simply setting up the following ACCESS descriptor:
ACCESS:X:,10
This would force a security level of 10 or greater to access
drive X. As long as no user (SysOp included) has a security of
10, then no access of drive X is possible. To lock out the root
directory of a drive the descriptor would be changed to:
ACCESS:X:\,10
Note the trailing backslash after the drive designation. This is
the only time that the backslash is necessary. To lock out a
particular directory:
ACCESS:C:\TINYHOST\BIN,9
would permit access to the TINYHOST\BIN subdirectory by people
with security levels of 9 or greater. Note that a trailing
backslash is not required (nor desired) when specifying a
complete directory path.
The config file that has been included with the TinyHost
package is set up to lockout drives A and B (normally floppies).
Overwrite, boot permission, and SysOp security levels are set to
that of the "SysOp", Sam Sysop.
2.8 Customizable Display Files
TinyHost permits the customizing of three display files by
the SysOp that are shown at three different points within the
program. TINYHOST.WEL is displayed after a connection has been
made and before a user has logged on. TINYHOST.BUL is displayed
after the logon process has been successfully completed.
TINYHOST.BYE is shown after the user has logged off. A sample
TINYHOST.WEL has been included on the TinyHost disk.
Each file can have any number of lines, but each line should
be no more than 80 characters long, and should be terminated with
a carriage return and line feed. If the file is longer than 20
lines TinyHost will pause at the 21st line (and every 21st line
thereafter).
These files should be placed in the same directory that
THOSTxxx.EXE and TINYHOST.CFG reside (the execution directory).
Page 7
If any of the display files do not exist TinyHost will continue
on its merry way!
3.0 OPERATION
3.1 Ringback Operation
Ringback mode has been implemented to permit using the same
phone line for both voice and data communications. In the case of
the author, his computer (running TinyHost) shares a phone line
with an answering machine. The use of ringback permits access to
the computer while not affecting answering machine operation.
To access TinyHost when ringback is implemented the caller
must first dial into the computer and permit the phone to ring at
least once (or permit the modem to detect at least one ring).
Then the caller should hang up and wait at least 8 seconds before
redialing the computer. As long as the redial is done within 1
minute of the first call, TinyHost will answer the phone and data
communications can begin. If more than 1 minute elapses then
TinyHost resets and begins waiting for the first ring.
3.2 TinyHost Operation
TinyHost is a very easy program to use - if for no other
reason than there aren't too many options with which to become
confused! After the program is started a status screen is
displayed on the local monitor. This information includes whether
or not TinyHost is in ringback mode, and, if so, whether or not
the program is waiting for the ringback. A local operator is also
able to view the progress of a remote connection since all
activity is echoed to the computer's monitor.
After TinyHost has been started, and while it is waiting for
a phone call, a local user can logon locally by pressing <ENTER>
(or <RETURN>). The local user will then be presented with the
same prompt a remote user gets, the request for the user's first
name. To exit TinyHost, a blank line should be entered at the
first name prompt.
If logon is desired, the user should then enter his first
name, last name, and password as requested. It is permissible to
string together any and all user information (for instance,
entering first and last name, separated by a space, at the First
Name prompt). It is not recommended to enter ones password in
this fashion as the characters would be echoed to both the local
and remote screens. The names and password inputs are not case
sensitive. TinyHost does not permit retries when entering this
information - if it is entered improperly TinyHost will deny
access and will hang up.
After the user successfully logs on, TinyHost checks to see
if any personal messages exist for the user. If so, TinyHost
beeps once, and displays a message that Personal Mail is waiting.
A check is also made for Public mail and SysOp Comments (security
Page 8
level permitting), and notices are displayed if either forms of
messages exist.
The user will then be presented with the Main Menu, which
displays the following command options:
*D - Download a file from TinyHost to the user.
*U - Upload a file to TinyHost from the user. If
security level permits, file overwrite is
possible with or without backup.
L - List the contents of the present directory.
*C - If permissible, allows the user to move
between drives and directories of the system.
*T - Typing out a text file that resides on the
host system.
*R - Read Personal or Public messages, or SysOp
comments (security level dependent).
*E - Enter a Personal or Public message or SysOp
comment.
*K - Kill Personal messages, or Private messages
or SysOp comments (security level dependent).
V - View User List (security level dependent).
I - Displays an informative screen about TinyHost.
H - Display a Help screen ('?' can also be used).
X - Toggles TinyHosts' Expert mode on and off.
When Expert mode is ON the longer menu and
informative messages are suppressed.
B - Re-display the logon Bulletin.
G - Goodbye. Ends the TinyHost connection.
W - Log off and reload the access and user info
from the config file. Subject to permission.
This option is *not* displayed on the screen
- it is a SysOp secret!!
* Command Chaining possible
Page 9
3.3 File Oriented Commands
3.3.1 File Transfers
TinyHost provides XModem, XModem/CRC, and 1K-Xmodem upload
and download capability (1K-XModem protocol is sometimes known as
YModem). All uploads and downloads take place from the current
directory that the user is in. If CHDIR access has not been
given, then file transfers take place from the Start-Up
directory. Note that if a user logs on locally file transfers are
not permitted (for obvious reasons).
Xmodem and XModem/CRC transfers appear as a single selection.
TinyHost will attempt to begin transfers using CRC as this is a
more reliable protocol than checksum. If CRC attempts are ignored
then the system will fall back to checksum.
When uploading a file to the TinyHost system, if the file
already exists the system will typically prevent overwriting that
existing file. The exception to this is if the OVERWRITE
descriptor has been set to a security level that matches (or is
less than) the caller's. If this is the case then the user will
have the option of overwriting the existing file. If overwrite is
selected then the user will also be asked if a backup of the
current file is desired. If a backup already exists then the
current backup will be overwritten by the new backup (no backups
of backups are made!).
The overwrite option was added to permit updating TinyHost's
config file from a remote location. Since new users cannot logon
to TinyHost it is necessary to create an appropriate account. By
using both the overwrite and warm boot capability the SysOp can
download the existing config file, modify it, upload it and
overwrite the existing config file, then tell TinyHost to load
the new information.
3.3.2 List Directory
This function displays the files that reside in the currently
selected sub-directory of the system. First, the current
directory path is displayed. Then, any additional sub-directories
that exist are shown. Finally, the individual files in the
current directory are displayed along with their sizes.
3.3.3 Changing Directories
The Change Directory function of TinyHost acts much the same
as the chdir (or cd) function from DOS. When Change Directory has
been chosen the program will prompt for a new directory. The same
type of input that is acceptable from a DOS command level is
suitable for TinyHost - entering two dots (..) will take TinyHost
to the next directory up the tree. Entering a complete path will
take the user to the specified directory. All of this is, of
course, assuming that the user has the necessary access to permit
moving around the host system. To ensure security of the host
Page 10
system, TinyHost will return to the designated Start-Up directory
after a user has logged off.
3.3.4 Typing out a File
This function permits typing out (listing) a file that
resides on the TinyHost computer. It is strongly advised that
this function be used only to view text (ASCII) files. Viewing
binary files (those with .EXE, .COM, .ZIP., etc. extensions) can
cause VERY unpredictable results!
If the user has Expert Mode turned off when this feature is
selected, a cautionary message similar to the above paragraph
will be displayed, then the user will be prompted for a filename.
If Expert Mode is enabled, then the user will be immediately
prompted for the filename. If the file exists in the currently
selected directory, then it will be displayed. TinyHost will
pause every 21 lines and ask if it is to continue displaying the
file. TinyHost will also automatically wrap the screen display if
the line length exceeds 80 characters. TinyHost will keep track
of added line feeds to be sure that the display is paused
properly.
The maximum line length that TinyHost will support (without a
terminating carriage return or line feed) is 256 characters.
3.4 Message Commands
3.4.1 Reading Messages
When a user logs onto TinyHost a notification is given if any
Personal or Public mail is waiting, beeping once for Personal
mail. If the user's security level is high enough, a notification
of waiting SysOp Comments is also given. To read the messages,
enter 'R' (or 'r') at the Main Menu prompt. A choice will then be
given to read Personal ('P'), Public ('U'), or SysOp Comments
('C'). After the second choice is made the message(s) are then
displayed. If more then one message is waiting, TinyHost pauses
before continuing on to the next message. The very first line of
the message notes who the message is from, and the time and date
that the message was entered.
If no mail is waiting of the selected type, a message
reporting this is displayed. If the user does not have sufficient
security to read SysOp Comments a notification is given and the
Comments are not displayed.
3.4.2 Entering Messages
To Enter a message or SysOp Comment, enter an 'E' (or 'e') at
the Main Menu prompt. The user will again be prompted for the
type of message to be left (Personal, Public, or SysOp Comment).
After the selection is made, a few notes regarding message input
are displayed along with a ruler line showing the length of a
message line.
Page 11
If entering a Personal (Private) message, the user will be
asked for the name of the person to send the message to. TinyHost
will then check to be sure that such a person exists in its user
base, so it is imperative that the user's name be spelled
correctly. To find out who exists in the user base, and to find
the proper spelling of names, a View User list can be done
(within security limits).
Up to 20 lines of 70 characters each may be entered. To end
the message, enter a blank line when done. TinyHost will then ask
whether the message should be Saved or Aborted.
TinyHost does not yet provide automatic wordwrap when
entering messages, so <RETURN> will have to be pressed when the
end of the line is reached. Message editing is also not currently
supported.
After the message is saved, TinyHost will automatically add
the sending individual's name, and the time and date the message
was entered, to the beginning of the message. The entire message
will then be saved into the appropriate message file.
3.4.3 Killing (Deleting) Messages
TinyHost will retain all messages until they are deleted.
This is accomplished by entering a 'K' (or 'k') at the Main Menu
prompt. The user will then be prompted for the type of mail to
delete - Personal, Public, or SysOp Comments. The user is then
asked if all messages are truly to be deleted, and if the
response is Yes, then the entire mail file is deleted.
If the user's security is not high enough to delete Public
Mail or SysOp Comments, such a message will be displayed and the
user will be returned to the Main Menu.
It must be stressed that when Killing Messages, ALL such
messages are deleted! There is presently no way, for instance, to
just delete one Private message out of the group. However, since
a DOS file delete is done, the file should be recoverable using
an easily available file recovery utility.
Non-deleted messages will hang around forever (or until the
next disk crash!). Personal messages, though, will make a minor
nuisance of themselves by beeping every time the user logs on.
This should help remind people to purge their old messages.
See Section 4.6 for information on editing the message files
using an ASCII editor.
3.4.4 Viewing User List
To help users when entering Personal mail, a View User List
function has been added. Entering a 'V' or 'v' at the Main Menu
prompt will display the list of users currently defined in
TinyHosts' user base. Both the first and last name of the
individuals are displayed.
Page 12
The View User List function can be restricted to higher
security levels simply by setting the VIEW descriptor value high
enough. This may be desired when TinyHost is open to new callers
(see Section 4.5), or when different security levels are
implemented. By not having a VIEW descriptor in the TINYHOST.CFG
file, all users will be able to see the user list.
3.5 Miscellaneous Commands
3.5.1 Expert Mode
Entering an 'X' (or 'x') at TinyHosts' Main Menu will toggle
the Expert User Mode on and off. When OFF, full menus and
informative displays are given throughout TinyHost. When ON,
these displays are suppressed and only a line showing the valid
character inputs is displayed.
3.5.2 Executing a Warm Boot
As described above, the warm boot option has been included to
permit the SysOp to add users by remotely updating the config
file. TinyHost normally only reads its config file on initial
start-up. Entering a 'W' will result in an immediate TinyHost
logging off (same as if Goodbye had been selected). The program
will then proceed to re-load its config file and retrieve ACCESS
and USER info - everything else in its configuration (INIT,
RESET, etc.) will remain untouched.
3.6 Command Chaining
Many commands can be used with Command Chaining. This is the
process of entering two pieces of information at the Main Menu
prompt, with a space separating the items. For instance, to type
out the file FOOBAR.TXT from the current directory, the command
line would be:
T FOOBAR.TXT <return>
Command chaining can be used in or out of Expert Mode, and
currently works with file and message commands. Section 3.2 lists
the available TinyHost commands, and the ones where command
chaining can be used are marked with asterisks ('*').
3.7 User Inactivity and Hang-Ups
TinyHost monitors the COM port for keyboard activity to be
sure that a user is still out there and awake. If no keyboard
activity is seen for an extended period of time (at least 2
minutes) TinyHost will hang up and recycle itself. The total
length of time that TinyHost will wait depend upon what menu the
user is in when the inactive period begins. A 5 minute delay is
set when Viewing a file; a 2 minute delay exists at the Main Menu
Page 13
prompt. This activity monitor will also handle disconnects that
occur in the middle of a logon session.
4.0 MISCELLANEOUS INFORMATION
4.1 What is Shareware?
TinyHost is being released as Shareware, which means that you
can try the program out *before* you buy it and make sure that it
will do what you want. If you find it of use, you are requested
to mail a contribution ($25 suggested) to the author to support
the continued development of this and other products. Please send
a check or money order (U.S. funds only) to:
Bruce A. Krobusek
1001 Cunningham Drive
Victor, NY 14564
For your $25 you will receive the latest registered version
of TinyHost on either 5 1/4 (360K) or 3 1/2 (720K) media (please
specify). The registered version of TinyHost has the same
functionality as the Shareware version, but the text requesting
contributions will be removed. You will also receive a registered
version of the next major release of TinyHost, and notifications
of future upgrades.
4.2 Distributing TinyHost
Even though TinyHost is Shareware it remains a
copyrighted program. As such, it may be freely copied and
distributed under the following guidelines:
* The author retains the sole right to sell the program
for a profit.
* The author grants users the right to copy and distribute
TinyHost so long as all program files remain unaltered
and are distributed as a group.
* The program may not be bundled with any other hardware
or software without the permission of the author.
* Recognized users groups may charge a maximum of $5 for
duplication and/or distribution of TinyHost.
Registered users are requested to distribute only the
Shareware (Unregistered) version of TinyHost. There is no
difference in functionality, but the Shareware version reminds
the user to register.
4.3 Warranty Information
The author (Bruce A. Krobusek) disclaims all warranties
expressed or implied as to the quality and performance of this
program (TinyHost). The author will not be held liable for any
lost profits, lost savings, or any other direct, indirect,
incidental, or consequential damages resulting from the use of
Page 14
this program. Your use of this program constitutes your agreement
to this disclaimer and your release of the author from any form
of liability or litigation.
4.4 Program Support
Now that the legal technicalities are out of the way, let me
state that I have done my best to ensure that TinyHost is error
free. However, that is not to imply that one might not find
errors that have been missed. If a problem should be found,
contact me through one of the avenues mentioned below and I will
do my best to correct it. Naturally, the more information that
can be supplied as to the nature of the bug the better chance I
will have of finding and squashing it!
I am also interested in receiving any comments or suggestions
regarding TinyHost. Although I have a few ideas for upcoming
enhancements (shell to DOS, external file transfer protocols, log
file support, online chat, etc.) I am always interested in
hearing what other people think of TinyHost.
Here are 5 methods that can be used in contacting me,
starting with the most preferable:
Micro Science BBS - (716) 594-1804 1200/2400
The MailBox BBS - (716) 594-1897 USR Dual Standard
These Bulletin Boards are located in Rochester, NY
and they are run by Larry Helber. The latest version
of TinyHost will always be available from either as
a free download. Do a file search (Z) and scan for
TINYHOST, or download TH*.ZIP. There is also a
TinyHost support conference where messages can be
left and received. No registration is required with
either BBS for TinyHost support.
Intelec (tm) Network - This is a national BBS network
(The MailBox is a member). There are nodes all over
the U.S. and Canada, with a few starting to appear
in other nations. I will monitor the Communications,
Shareware, and Central conferences for any mail
addressed to me. Please try to spell my name
correctly or I may not be notified of a message.
GEnie - General Electric Network for Information Exchange
My account name is B.KROBUSEK. I usually logon
once a week or so.
CompuServe Informational Services - My account number
is 74106,1335. Again, I try to logon about once
a week.
Home Address - 1001 Cunningham Drive
Victor, NY 14564
Page 15
4.5 New User Logons
Although TinyHost does not permit a new user to register,
there is a way to permit new users to logon. To do this, a user
account can be created, with a password, and this information can
be displayed as part of the TinyHost Welcome screen. For
instance, an account could be created with the name New User, the
password GUEST, and a security level of 0 (zero). A message could
be left as part of the TINYHOST.WEL screen stating that new users
should use this account to logon. These users would then be able
to access the files in the Start-Up directory, they could read
Public mail, and they could leave any type of mail message. If
the security levels were set properly (the setting in the
included TINYHOST.CFG file would be fine), then the new user
would not be able to do anything else. This would be an easy way
of leaving the TinyHost system partially accessible to, for
instance, the customers of a company.
4.6 Message File Format
The TinyHost message files are standard ASCII text files.
Each file has the extension ".TH". Files for Personal mail
consist of filename made up of the user's first and last names.
The user's first name is used, with characters from the last name
being added to pad the filename for up to 8 characters (the DOS
limit). For instance, if the user's name is Joe Fabeets, then his
personal mail file will have the filename JOEFABEE.TH. Public
mail is stored in PUBLIC.TH; SysOp Comments are stored in
COMMENTS.TH.
Although TinyHost limits message input to 70 characters per
line and 20 lines, this is strictly a program limit. A message
file created off-line does not have to adhere to these
restrictions (although it is suggested that line length be kept
under 80 characters). Each line should be terminated in a
carriage return / line feed pair. The end of the message should
be marked with a period ('.') in the first column of the
terminating line, followed again by a carriage return / line
feed. This terminating period is not displayed to the reader.
It can be seen, then, that the SysOp can edit Public Mail
offline to keep desired messages in the mail file. This can be
done using a standard ASCII file editor.
4.7 Known Program Limits
A few areas exist where there are some known limitations:
First, I am somewhat confused as to the flexibility of
1K-XModem file transfers. The implementation within TinyHost
supports both CRC and checksum error detection, yet in the
testing that I have done I have never been able to implement a
1K-XModem checksum file transfer because the communications
package I was using did not support it. As TinyHost is currently
implemented it will attempt to start a CRC upload, and will retry
for a total of 30 seconds. If the upload does not begin in that
Page 16
time it will fall back to attempting a checksum upload. However,
after TinyHost falls back to checksum it will not return to a CRC
mode of transfer. The upshot of all of this is that if it takes
more than 30 seconds to initiate a 1K-XModem upload using CRC
error checking then errors will occur and the upload will never
begin (assuming that your communications package does not support
1K checksum). If this happens simply abort the upload and begin
again.
Secondly, file transfer errors have been observed when using
the 1K-XModem protocol at 1200 baud with Windows 3.0 and having
TinyHost running as a background task. The host machine was a
16MHz 386SX with 4Mb of RAM. These errors have *not* been seen
running TinyHost within DesqView at rates of up to 2400 baud. It
is entirely possible that by judicious time-slice selection
within Windows that this problem could be eliminated.
Finally, I have not had access to the proper equipment to
completely test TinyHost at 4800 and 9600 baud. Although I have
every reason to believe that operation will be reliable at these
speeds there is also the possibility that I may have missed
something. As soon as I have the capability to thoroughly test at
higher speeds I shall do so.
Page 17